﻿using System;
using System.Collections.Generic;

namespace CSLauncher.Hotkey.Interface
{
    internal class HotkeyPressedEvent : EventArgs
    {
        public int Identifer { get; private set; }

        public HotkeyPressedEvent(int identifier)
        {
            Identifer = identifier;
        }
    }

    internal interface IHotkeyManager : IDisposable
    {
        HotkeyData this[int identifier] { get; }
        ICollection<int> RegisteredIdentifiers { get; }
        bool IdentifierRegistered(int identifier);
        void Register(int identifier, HotkeyData hotkey);
        void Remove(int identifier);
        event EventHandler<HotkeyPressedEvent> HotkeyPressed;
    }
}
